package org.lyg.shiro.session;

import org.apache.shiro.session.Session;

import java.io.Serializable;
import java.util.Collection;

/**
 * session 存取操作
 */
public interface ShiroSessionRepository {
    /**
     * 存储session
     * @param session 要保存的session实例
     */
    void saveSession(Session session);

    /**
     * 删除session
     * @param sessionId 要删除的session的Id
     */
    void deleteSession(Serializable sessionId);

    /**
     * 获取session
     * @param sessionId sessionId
     */
    void getSession(Serializable sessionId);

    /**
     * 获取所有session
     * @return 返回全部session
     */
    Collection<Session> getAllSessions();
}
